var obj = {}

// 1、toString（推荐）

Object.prototype.toString.call(obj) === '[object Object]'

// 2、constructor

obj.constructor === Object

// 3、instanceof 需要注意的是由于数组也是对象，因此用 arr instanceof Object 也为true。

obj instanceof Object

// 4、typeof

typeof obj === Object

// 根据typeof判断对象也不太准确
// 表达式	                      返回值
// typeof undefined	       'undefined'
// typeof null	               'object'
// typeof true	               'boolean'
// typeof 123	               'number'
// typeof "abc"	           'string'
// typeof function() {}	   'function'
// typeof {}	               'object'
// typeof []	               'object'

// 5、$.isPlainObject()
// 判断指定参数是否是一个纯粹的对象（所谓"纯粹的对象"，就是该对象是通过"{}"或"new Object"创建的。）

$.isPlainObject(obj)